package com.jiali.backend.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jiali.backend.common.ResponseResult;
import com.jiali.backend.controller.request.StaffAddRequest;
import com.jiali.backend.controller.request.StaffUpdateRequest;
import com.jiali.backend.model.Staff;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;


/**
* @author piko
* @description 针对表【staff(员工表)】的数据库操作Service
* @createDate 2025-03-27 15:33:51
*/
public interface StaffService extends IService<Staff> {
    //查询所有员工
    ResponseResult<List<Staff>> getAllStaffs(HttpServletRequest request);
    //查询单个员工-按名称
    ResponseResult<List<Staff>> searchStaffsByName(String name, HttpServletRequest request);
    // 根据ID删除员工
    ResponseResult<Boolean> deleteStaffById(Integer id, HttpServletRequest request);
    // 根据ID查询员工
    ResponseResult<Staff> getStaffById(Integer id, HttpServletRequest request);
    // 新增员工
    ResponseResult<Staff> addStaff(StaffAddRequest staffAddRequest, HttpServletRequest request);
    // 更新员工信息
    ResponseResult<Staff> updateStaff(StaffUpdateRequest staffUpdateRequest, HttpServletRequest request);
    // 新增按级别查询员工
    ResponseResult<List<Staff>> getStaffsByPosition(Integer position, HttpServletRequest request);
}
